import Vue from 'vue'
import Vuex from 'vuex'
// 导入request
import request from '@/utils/request'

Vue.use(Vuex)

export default new Vuex.Store({
  // 定义数据
  state: {
    // 新闻列表
    list: [],
    // 新闻详情
    detail: {}
  },
  // 定义修改数据的方法
  mutations: {
    // 修改list数据
    setList (state, payload) {
      state.list = payload
    }
  },
  // 定义后台API数据的方法
  actions: {
    // 获取list数据
    async getList ({ commit }) {
      const { data: { data: { results } } } = await request({
        url: 'articles',
        params: {
          channel_id: 0,
          // 获取新闻列表的时间节点
          timestamp: +new Date(),
          with_top: 1
        }
      })
      console.log(results)
      // 存储新闻列表数据
      /**
       * 第一个参数 mutations中修改数据的方法名
       * 第二个参数 传递参数（存储的列表数据）
       */
      commit('setList', results)
    }
  },
  modules: {
  }
})
